package com.john.study.es.config.annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Inherited;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 标识一个类是ES中的一个Mapping定义类
 *
 * @author jiangguangtao 2017/7/28.
 */
@Inherited
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.TYPE})
public @interface MappingBean {
    /**
     * 映射名称，一般与类型（type）相同
     *
     * @return
     * @see #type()
     */
    String value();

    /**
     * 所属索引名称 可选值
     *
     * @return
     */
    String index() default "";

    /**
     * 所属类型名 可选值
     *
     * @return
     * @see #value()
     */
    String type() default "";
}
